//
//  main.c
//  wangzuo3-29
//
//  Created by mac on 16-3-29.
//  Copyright (c) 2016年 wangzuo. All rights reserved.
//

#include <stdio.h>
#define MAX_STRLEN 256

typedef int status; //一种用于函数的返回状态，执行成功返回1，否则返回0
//定义一个结构体
typedef struct
{
    char str[MAX_STRLEN];//存放串的串值
    int length;//保存串长
}StringType;

//串的联结操作(将串t联结到串s后面，新的串保存在s中)
status Str_Concat(StringType s,StringType t)
{
    //1.判断s和t的长度之和不能大于MAX_STRLEN
    if ((s.length+t.length)>MAX_STRLEN)
    {
        printf("溢出\n");
        return 0;
    }
    //2.将串t联结到串s后面
    for(int i=0;i<t.length;i++)
    {
        s.str[s.length+i]=t.str[i];
    }
    //3.修改连接后的串长度
    s.length=s.length+t.length;
    return 1;
}

//求子串的操作
//“abcdefhhijklmn”
status SubString(StringType s,int pos,int len,StringType *sub)
{
    //1.判断pos在s中是否溢出
    if (pos<1||pos>s.length||len<=s.length-pos+1)
    {
        printf("参数非法\n");
        return 0;
    }
    //2.求得子串长度
    sub->length=len;
    //3.逐个字符复制到子串中
    for (int j=0,k=pos; j<len; j++,k++) {
        sub->str[j]=s.str[pos-1+j];
    }
    return 1;
}

int main(int argc, const char * argv[])
{
   
    return 0;
}

